UEFI (Unified Extensible Firmware Interface) is a model for the interface between personal computer operating systems and platform firmware. UEFI was preceded by EFI (Extensible Firmware Interface) as a result, EFI designations are assumed to be part of UEFI. UEFI defines a set of data tables which contain platform related information, and provide boot and runtime services to the operating system loader. UEFI is replacing BIOS as the interface between the personal computer platform and the operating system.
UEFI typically provides a platform firmware menu which allows selection of an operating system loader. The UEFI firmware boot manager can load any application written to the UEFI specification. In general, the operating system loader application file is loaded from the ESP (EFI System Partition). UEFI uses NVRAM variables to locate and load the application file. UEFI allows multiple entries in the NVRAM for selecting between multiple operating system loaders, and EFI applications.
Conventional boot loaders, such as the Microsoft Windows boot loader will typically only load Microsoft EFI applications, and Microsoft Windows does not provide a method for adding arbitrary entries to the UEFI firmware boot manager from within the Windows operating system.